using System;
using System.Collections.Generic;
using System.Text;

namespace MindFactorial.LaunchPoint.Common
{
    /// <summary>
    /// base class for all modifyable collections
    /// </summary>
    /// <typeparam name="K"></typeparam>
    /// <typeparam name="V"></typeparam>
    public interface IModifyableCollection<K,V> : IObject
    {
        /// <summary>
        /// adds an item to the collection
        /// </summary>
        /// <param name="key"></param>
        /// <param name="item"></param>
        void Add(K key, V item);

        /// <summary>
        /// removes an item from the collection
        /// </summary>
        /// <param name="key"></param>
        void Remove(K key);
    }
}
